﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ShiQuan.IotDevice.Entity
{
    /// <summary>
    /// 农药残留检测结果
    /// </summary>
    public class DetectionResultEntity : BasicIotDeviceEntity
    {
        /// <summary>
        /// 检测项目
        /// </summary>
        [Display(Name = "检测项目"), MaxLength(50)]
        public string TestCode { get; set; }
        /// <summary>
        /// 检测人
        /// </summary>
        [Display(Name = "检测人"), MaxLength(50)]
        public string InspectBy { get; set; }
        /// <summary>
        /// 检测时间
        /// </summary>
        [Display(Name = "检测时间")]
        public DateTime? InspectOn { get; set; }
        /// <summary>
        /// 日期
        /// </summary>
        [Display(Name = "日期")]
        public DateTime? Date { get; set; }
        /// <summary>
        /// 年
        /// </summary>
        [Display(Name = "年")]
        public int? Year { get; set; }
        /// <summary>
        /// 月
        /// </summary>
        [Display(Name = "月")]
        public int? Month { get; set; }
        /// <summary>
        /// 周
        /// </summary>
        [Display(Name = "周")]
        public int? Week { get; set; }
        /// <summary>
        /// 日
        /// </summary>
        [Display(Name = "日")]
        public int? Day { get; set; }
        /// <summary>
        /// 时
        /// </summary>
        [Display(Name = "时")]
        public int? Hour { get; set; }

        /// <summary>
        /// 设备安装标识
        /// </summary>
        [Display(Name = "设备安装标识"), MaxLength(50)]
        public string RefInstallId { get; set; }
        /// <summary>
        /// 被检单位
        /// </summary>
        [Display(Name = "被检单位"), MaxLength(50)]
        public string RefCorpId { get; set; }
        /// <summary>
        /// 被检单位
        /// </summary>
        [Display(Name = "被检单位"), MaxLength(100)]
        public string CorpName { get; set; }
        /// <summary>
        /// 检测设备
        /// </summary>
        [Display(Name = "检测设备"), MaxLength(50)]
        public string RefDeviceId { get; set; }
        /// <summary>
        /// 检测设备
        /// </summary>
        [Display(Name = "检测设备"), MaxLength(100)]
        public string DeviceName { get; set; }
        /// <summary>
        /// 样品编号
        /// </summary>
        [Display(Name = "样品编号"), MaxLength(50)]
        public string SampleCode { get; set; }
        /// <summary>
        /// 样品名称
        /// </summary>
        [Display(Name = "样品名称"), MaxLength(50)]
        public string RefSampleId { get; set; }
        /// <summary>
        /// 样品名称
        /// </summary>
        [Display(Name = "样品名称"), MaxLength(50)]
        public string SampleName { get; set; }
        /// <summary>
        /// 样品批号
        /// </summary>
        [Display(Name = "样品批号"), MaxLength(50)]
        public string BatchCode { get; set; }
        /// <summary>
        /// 检测项目
        /// </summary>
        [Display(Name = "检测项目"), MaxLength(50)]
        public string RefItemId { get; set; }
        /// <summary>
        /// 检测项目
        /// </summary>
        [Display(Name = "检测项目"), MaxLength(50)]
        public string TestItem { get; set; }
        /// <summary>
        /// 检测依据
        /// </summary>
        [Display(Name = "检测依据"), MaxLength(100)]
        public string TestBasis { get; set; }
        /// <summary>
        /// 检验方法
        /// </summary>
        [Display(Name = "检验方法"), MaxLength(255)]
        public string TestMethod { get; set; }
        
        /// <summary>
        /// 检测地点
        /// </summary>
        [Display(Name = "检测地点"), MaxLength(50)]
        public string TestSite { get; set; }
        /// <summary>
        /// 检测值
        /// </summary>
        [Display(Name = "检测值"), MaxLength(50)]
        public string TestValue { get; set; }
        /// <summary>
        /// 检测结果
        /// </summary>
        [Display(Name = "检测结果"), MaxLength(50)]
        public string TestResult { get; set; }
        /// <summary>
        /// 判定标准
        /// </summary>
        [Display(Name = "判定标准"), MaxLength(50)]
        public string JudgmentStandard { get; set; }
        /// <summary>
        /// 判定结果：合格、不合格
        /// </summary>
        [Display(Name = "判定结果"), MaxLength(50)]
        public string JudgmentResult { get; set; }
        /// <summary>
        /// 检测结果
        /// </summary>
        [Display(Name = "检测结论"), MaxLength(255)]
        public string TestVerdict { get; set; }
        /// <summary>
        /// 检测报告
        /// </summary>
        [Display(Name = "检测报告"), MaxLength(255)]
        public string FileUrl { get; set; }
        /// <summary>
        /// 备注说明
        /// </summary>
        [Display(Name = "备注说明"), MaxLength(255)]
        public string Remark { get; set; }
    }
}
